<!doctype html>
<title>WebSockets: send() in onclose</title>

<script src=/resources/testharness.js></script>
<script src=/resources/testharnessreport.js></script>
<script src=../../../constants.js?pipe=sub></script>
<div id=log></div>
<script>
async_test(function(t) {
  var ws = new WebSocket(SCHEME_DOMAIN_PORT+'/echo');
  ws.onopen = t.step_func(function(e) {
    ws.send('Goodbye');
  })
  ws.onclose = t.step_func(function(e) {
    // test that nothing strange happens when send()ing in closed state
    var sent = ws.send('test');
    assert_equals(sent, undefined);
    ws.onclose = t.step_func(function() {assert_unreached()});
    setTimeout(function() {t.done()}, 50);
  })
  ws.onerror = t.step_func(function() {assert_unreached()});
});
</script>
